<?php
class ADevolucionProveedor {

	public function __construct() {
	}

	public function actualizaCuentas(EFacade & $facade) {
		
		
		
		//echo 'se entro';
		epLoadConfig('../config.xml');

		$m = epManager::instance();
		$doc = & $facade->getDocumentRoot();
	    $workflowNDC = & $facade->getWorkflow();
		$ezpdo_= getManager();
		$role=NULL;

		$network=$doc->workflowRef->networkRef;
		
		$query='FROM MConfiguracionCuenta as t WHERE t.documento.oid=?';
		$configuracion=$ezpdo_->find($query,$network->epGetObjectId());
		//echo '<br>configuracion contable',$configuracion[0];
		
		
		$productos=$doc->productoList;
		$contador=0;
		foreach($productos as $p){
			$item=$p->item->esUnProducto->tipoProducto->descritoPor;
			$contador=$contador+$item->precioCompra;
			
		}
		
		$cuentas=$configuracion[0]->cuenta;
		
		foreach($cuentas as $c){
			
			if($c->posicion==1){
				$c->cuentaContable->disminuye($contador,$doc);
			}
			if($c->posicion==2){
				$c->cuentaContable->disminuye($doc->importeTotal,$doc);
			}
		}

			
		$doc->epSetDirty(TRUE);// marcar el documento para que sea salvado los cambios en su lista de items
		$workflowNDC->epSetDirty(TRUE);
		$facade->saveWorkflow();			
		//echo '<hr>TTT',$doc,' ---- ',$ctaBancaria;
		
		$transSetSA = & EFacade :: getCurrentTransSetAuto($workflowNDC, 2); //TYPE AUTO AGENT
		$role=NULL;
		$transSA = $transSetSA->getTransByName('t2');
		$facade->fireTrans($transSA,$role,'Actualizar cuentas', TRUE);
		//echo '<br>listo';
			
	}
	
	
}
?>